using System;
using System.Text;
using System.Collections.Generic;
using Zeus.DAL.NHibernate.Repositories;

namespace Zeus.Biz.DomainModel.NHib.Northwind {
    
    public class Employee : Entity<int> {
        public Employee() {
			Employees = new List<Employee>();
			EmployeeTerritories = new List<EmployeeTerritory>();
			Orders = new List<Order>();
        }
        public int EmployeeID { get; set; }
        public string LastName { get; set; }
        public string FirstName { get; set; }
        public string Title { get; set; }
        public string TitleOfCourtesy { get; set; }
        public System.Nullable<System.DateTime> BirthDate { get; set; }
        public System.Nullable<System.DateTime> HireDate { get; set; }
        public string Address { get; set; }
        public string City { get; set; }
        public string Region { get; set; }
        public string PostalCode { get; set; }
        public string Country { get; set; }
        public string HomePhone { get; set; }
        public string Extension { get; set; }
        public byte[] Photo { get; set; }
        public string Notes { get; set; }
        public string PhotoPath { get; set; }
        public IList<Employee> Employees { get; set; }
        public IList<EmployeeTerritory> EmployeeTerritories { get; set; }
        public IList<Order> Orders { get; set; }

        public override string ToString()
        {
            string format = "Employee ID: {0}\nLast Name: {1}\nFirst Name: {2}\nTitle: {3}";

            return string.Format(format, EmployeeID, LastName, FirstName, Title);
        }
    }
}
